﻿using RearLivestock.Common.Domains.Enum;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RearLivestock.Common.Dtos
{
    /// <summary>
    /// 出生基本信息dto
    /// </summary>
    public class BasicDto
    {
        /// <summary>
        /// 基本信息Id
        /// </summary>
        public int BasicInforId { get; set; }
        /// <summary>
        /// 耳号
        /// </summary>
        public string? EarNumber { get; set; } = string.Empty;
        /// <summary>
        /// 电子耳标号
        /// </summary>
        public string? Electronicearlabel { get; set; } = string.Empty;
        /// <summary>
        /// 基因等级枚举
        /// </summary>
        public GeneticlevelEnums? GeneticlevelEnums { get; set; }
        /// <summary>
        /// 性别
        /// </summary>
        public int? Gender { get; set; }

        /// <summary>
        /// 品种ID
        /// </summary>
        public int? VarietiesId { get; set; }
        /// <summary>
        /// 品种名称
        /// </summary>
        public string VarietiesName { get; set; } = string.Empty;

        /// <summary>
        /// 父亲耳号
        /// </summary>
        public string? FatherEarNumber { get; set; } = string.Empty;
        /// <summary>
        /// 母亲耳号
        /// </summary>
        public string? MotherEarNumber { get; set; } = string.Empty;
        /// <summary>
        /// 出生日期
        /// </summary>
        public DateTime? BirthDate { get; set; }
        /// <summary>
        /// 入场日期
        /// </summary>
        public DateTime EntryDate { get; set; }
        /// <summary>
        /// 出生场地
        /// </summary>
        public string Birthplace { get; set; } = string.Empty;
        /// <summary>
        /// 出生重量
        /// </summary>
        public decimal BirthWeight { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; } = string.Empty;
        /// <summary>
        /// 出生状态
        /// </summary>
        public BirthStatusEnums? BirthStatus { get; set; }

        /// <summary>
        /// 猪只类型Id
        /// </summary>
        public int? PigTypeId { get; set; }
        /// <summary>
        /// 猪只类型名称
        /// </summary>
        public string? PigTypeName { get; set; } = string.Empty;
        /// <summary>
        /// 栋舍id
        /// </summary>
        public int? BedroomId { get; set; }
        /// <summary>
        /// 栋舍名称
        /// </summary>
        public string BedroomName { get; set; }=string.Empty;
        /// <summary>
        /// 在场状态枚举
        /// </summary>
        public PresentstatusEnums? Presentstatus { get; set; }
        /// <summary>
        /// 繁殖状态枚举
        /// </summary>
        public ReproductivestatusEnums? Reproductivestatus { get; set; }
        /// <summary>
        /// 生产等级枚举
        /// </summary>
        public ProductiongradeEnums? Productiongrade { get; set; }
        /// <summary>
        /// 销售等级枚举
        /// </summary>
        public SaleslevelEnums? Saleslevel { get; set; }
        /// <summary>
        /// 是否妊检
        /// </summary>
        public int IsPrenatalCheckup { get; set; }
        /// <summary>
        /// 栏位Id
        /// </summary>
        public int? FieldId { get; set; }
        /// <summary>
        /// 栏位名称
        /// </summary>
        public string FieldName { get; set; } = string.Empty;
        /// <summary>
        /// 母猪分娩id
        /// </summary>
        public int FarrowingId { get; set; }
        /// <summary>
        /// 分娩日期
        /// </summary>
        public DateTime FarrowingDate { get; set; } = DateTime.Now;
    }
}
